Книги-online
Ch 9.htm
назад
|
содержание
|
вперед
Работа на уровне файлов
Для создания файла можно использовать
метод createTextFile класса
FileSystemObject:
Dim NewFSO As New FileSystemObject,
NewFile As TextStream
Set NewFile = NewFSO.CreateTextFile
("C:\NewFiletxt.html")
Для удаления файла используется
метод Delete класса File. Необходимо заметить, что перед удалением файл должен
быть закрыт с помощью метода close. Программный код, выполняющий удаление файла
в приложении, выглядит следующим образом:
Dim NewFile As TextStream, File
Set NewFile = NewFSO.CreateTextFile("c:\NewFiletxt.html")
NewFile.Close
Set File = NewFSO.GetFile("c:\NewFiletxt.html")
File.Delete
В этом примере файл сначала создается,
а затем удаляется.
Перемещение файлов выполняется с
помощью метода Move класса File. Если воспользоваться предыдущим текстом, то
код, выполняющий перемещение файла, выглядит следующим образом:
Dim NewFile As TextStream, File
Set NewFile
=
NewFSO.CreateTextFile("c:\NewFiletxt.html")
NewFile.Close
Set File
=
NewFSO.GetFile("c:\NewFiletxt.html")
File.Move ("c:\NewFiletxt.html")
При этом, как и при удалении, необходимо
закрывать файл.
Копирование файла выполняется аналогично
перемещению с использованием метода copy.
Разработаем приложение для изучения
работы с файлами. Для этого воспользуемся приложением, созданным в предыдущем
примере при рассмотрении работы с папками. Откройте приложение и модифицируйте
его следующим образом:
1. Увеличьте размер формы, переставьте
кнопки и текстовое поле с меткой, как показано на рис. 9.13. Текст метки измените
на
Имя файла.
2. Добавьте в форму объект типа
FileListBox (Список файлов), дважды щелкнув мышью кнопку
FileListBox
на панели элементов управления. Используя свойство Name, назовите его filFiles.
3. Измените текст кода в приложении
на указанный ниже:
Dim NewFSO As New FileSystemObject,
Folder As Folder
Dim sNameFolder As String
Dim sNameFile As String
Dim File
Private Sub cbCreate_Click()
' Создание файла
Dim NewFile As TextStream
sNameFile = dirFolders.Path + "\"
+ txtNameFile.Text
Set NewFile = NewFSO.CreateTextFile(sNameFile)
filFiles.Refresh
End Sub
Private Sub cbDelete_Click()
' Удаление файла
sNameFolder = dirFolders.Path
Set Folder
=
NewFSO.GetFolder(sNameFolder)
If Folder.IsRootFolder = True Then
sNameFile = filFiles.Path + filFiles.FileName
Else
sNameFile = filFiles.Path + "\"
+ filFiles.FileName
End If
Set File = NewFSO.GetFile(sNameFile)
File.Delete
filFiles.Refresh
End Sub
Private Sub cbRename_Click ()
' Переименование файла
sNameFolder = dirFolders.Path
Set Folder = NewFSO.GetFolder(sNameFolder)
If Folder.IsRootFolder = True Then
sNameFile
=
filFiles.Path
+ filFiles.FileName
Else
sNameFile = filFiles.Path + "\"
+ filFiles.FileName
End If
Set File
=
NewFSO.GetFile(sNameFile)
File.Name = txtNameFile.Text fil
Files.Refresh
End Sub
Private Sub dirFolders Change()
filFiles.Path = dirFolders.Path
End Sub
Private Sub drvSelectDrive_Change()
dirFolders.Path = drvSelectDrive.
Drive
End Sub
Private Sub filFiles_Click()
txtNameFile.Text = filFiles.FileName
End Sub
Рис. 9.13.
Приложение для
изучения работы с файлами
В этом приложении создаются, удаляются
и переименовываются файлы. Работа списков синхронизирована по событию change
списков устройств и папок.
назад
|
содержание
|
вперед